<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>Document</title>
  </head>
  <body>
    <script>
      function factorial(n) {		// 定义回调函数
        if (n == 1) {
          return 1;     	   		// 递归出口
        }
        return n * factorial(n - 1);
      }
      var n = prompt('求n的阶乘\n n是大于等于1的正整数，如2表示求2!。');
      n = parseInt(n);
      if (isNaN(n)) {
        console.log('输入的n值不合法');
      } else {
        console.log(n + '的阶乘为：' + factorial(n));
      }
    </script>
  </body>
</html>